import axios from "axios";
import { Toast } from "vant";
import store from "@/store";

const axiosInstance = axios.create({
    //请求的地址
    baseURL: "http://home.softeem.xin:9544",
    //请求的最长时间啊
    timeout: 5000,
    // headers: {
    //     "Content-Type": "application/json"
    // }
})

//请求拦截器（在每次发送请求的之前都会触发）
axiosInstance.interceptors.request.use(req => {
    //判断token是否有值，如果有，则携带token
    if (store.state.token !== null) {
        //携带token
        req.headers.softeem_ele_client_token = store.state.token;
    };
    //将加工后的值返回出去
    return req;
}, err => {
    //系统级错误,http请求协议上的错误
    Toast.clear();
    Toast.fail("请求失败，请稍后重试");
    //返回错误的信息
    return Promise.reject(err);
})



//响应拦截器
axiosInstance.interceptors.response.use(function (response) {
    // 对响应数据做点什么
    if (response.data.status == "success") {
        return Promise.resolve(response.data.data);
    } else {
        //逻辑问题
        //清空所有的提示信息
        Toast.clear();
        Toast.fail("请求失败，请稍后重试");

        console.log("服务器请求成功，但是返回的结果是失败的");
        return Promise.reject(response.data);
    }
}, err => {
    //系统级错误,http请求协议上的错误
    Toast.clear();
    Toast.fail("请求失败，请稍后重试");
    //返回错误的信息
    return Promise.reject(err);
})


export default axiosInstance;